The actual fix looks good: Reviewed-by: Christoph Hellwig <hch at lst.de> But shou;dn't we move the setting of b_error to zero into common buffer code instead of adding it to the callers?