On Thu, Apr 03, 2025 at 11:10:02AM +0800, Xiaole He wrote: > Thank you for your thoughtfully feedback. > I think you are right, and I'm sorry for my pedantic anxiety. > So if we just ignore this patch for now, or I should submit a bug > report to kernel community in order to invite more thorough fix? > Thanks for your patient again. I don't believe that adding random checks would make any sense - same as for any library function, really. Having the documentation slightly more clear would make sense, though; currently it's * iterate_supers_type - call function for superblocks of given type * @type: fs type * @f: function to call * @arg: argument to pass to it * * Scans the superblock list and calls given function, passing it * locked superblock and given argument. and description could've been better. The weakest part in there is, IMO, "the superblock list" - there is a global list of all superblocks (inventively called 'super_blocks'), but that's not what gets scanned; the list of superblocks of given type (type->fs_supers) we iterate through. Something along the lines of "Call given callback @f for all superblocks of given type. The first argument passed to @f points to a locked superblock that belongs to @type; the second is a caller-supplied opaque pointer @arg. The caller is responsible for passing @arg that would make a valid second argument for @f - compiler can't help here" might be a starting point, but I'm not up to turning that into proper English.