建安十六年(211年),
曹操西征关中,田银、苏伯起兵于河间,幽、冀二州为之煽动。当时身在后方的
曹丕打算亲自讨伐,常林对曹丕说:“我曾在博陵和幽州任职,对于贼寇的情况,是可以猜测推断的。北方的官吏百姓,崇尚和平安定,厌恶战乱,受教化已久,安分守己的占绝大多数。田银、苏伯是犬羊相聚,阴谋虽大但才智不足,难成大患。如今我军主力远离京师,外面又有强敌,将军在此坐镇天下,如轻易出兵远征,即便取胜也不算大智大勇。”曹丕听从常林的建议,就派将军贾信讨伐田银、苏伯。 鲜卑大人轲比能也率三千多名骑兵跟随阎柔讨伐田银、苏伯。
当时的曹操已经击破马超,到达安定,闻知此事,令
曹仁行骁骑将军,都督七军讨伐田银、苏伯。曹操自己也决定引军退还,杨阜对曹操说:“
马超有信、布之勇,极得羌、胡等民族的拥戴,西州的人都敬畏他。如果大军撤退,防备不做周密,陇上诸郡恐怕就不再为国家所有了。”曹操认为杨阜说得对,但撤退时仓促,为备不周。
最终诸军击破田银、苏伯,平定河间,叛军应时而灭。
平定河间后,有一千多人请降,议者皆认为应按照旧法,尽诛降人,
程昱说:“以前之所以要诛杀投降者,是因为当时局势动荡,天下大乱,攻打贼人时采取‘围而后降者不赦’的方针,目的在于示威天下,同时开示利益,以求用兵时不需要再包围。如今天下形势大致已经安定,而且今次的战事是发生在领土之内,这些都是必定投降的贼众,杀了他们也没有可以示威示惧的地方,失去了以往诛降的策略意义。因此我认为这些降兵不可诛杀;即使要诛杀他们,也要先上报曹公。”议者都说:“军事方面可以专命,无需请示。”程昱闻言后,不再作出回应。曹丕起身走入私门,引见程昱,说:“您似乎言犹未尽?”程昱说:“所谓‘专命’,都是因为面对临时之急,决策在呼吸之间的时候。如今此贼已经被贾信制服,此事不会突发太过急剧的异变。因此老臣才不希望将军急于自作主张,做出专制的事情。”曹丕叹道:“您考虑得非常周到啊!”随即将此事向曹操交代。当时居府长史
国渊认为投降的人并不是首恶,也向曹操请求不要行刑。曹操听从国渊的建议,这一千多人最终都得以生还。