On Fri, Nov 22, 2019 at 11:14:34AM -0800, Christoph Hellwig wrote: > On Fri, Nov 22, 2019 at 12:09:14PM -0700, Jens Axboe wrote: > > On 11/22/19 12:07 PM, Christoph Hellwig wrote: > > > On Fri, Nov 22, 2019 at 10:53:22AM -0800, Kees Cook wrote: > > >> Friendly ping! I keep tripping over this. Can this please get applied so > > >> we can silence syzbot and avoid needless WARNs? :) > > > > > > What call stack reaches this? Upper layers should never submit a write > > > bio on a read-only queue, and we need to fix that in the upper layer. > > > > It's an fsync, the trace is here: > > > > https://syzkaller.appspot.com/x/log.txt?x=159503d2e00000 > > Oh. I think this is a bug in the block layer, we should not treat > a sync as write for the purposes of is read-only checks, as it never > writes data to the device. At the request layer we alread use > the proper REQ_OP_FLUSH, but at the bio layer we are still abusing > empty writes apparently. I'll try to cook up something over the > weekend. Cool; thanks! Note that syzbot has a reproducer for it: https://syzkaller.appspot.com/text?tag=ReproC&x=117ccc8c400000 If that doesn't work for your own testing, you can ask syzbot to test patches itself: https://goo.gl/tpsmEJ#testing-patches -- Kees Cook