> * Andrew Morton <[email protected]> wrote: >> Andy, can we have a checkpatch rule please? > > Note, that will upset creative uses of error codes i guess, such as > fs/xfs/. > > But yeah, +1 from me too. > > Ob'post'mortem - looked for similar patterns in the kernel and there's > quite a few bugs there: > > include/net/inet_hashtables.h: return ENOMEM; # bug > drivers/scsi/aic7xxx/aic7xxx_osm.c: return ENOMEM; # > works but weird > drivers/scsi/cxgb3i/cxgb3i_offload.c: return ENOMEM; # > works but weird > fs/ocfs2/dlm/dlmrecovery.c: return EAGAIN; # bug > drivers/block/cciss_scsi.c: return ENXIO; # > works but weird > drivers/gpu/drm/radeon/radeon_irq.c: return EINVAL; # bug > drivers/gpu/drm/radeon/radeon_irq.c: return EINVAL; # bug > drivers/isdn/hardware/mISDN/hfcmulti.c: return EINVAL; # bug
I noticed some of these as well. I found some more and sent a few patches last night with a regex like: git grep -n -E "[^=]=[[:space:]]*E[[:upper:]2]+ *;" I am not 100% sure this doesn't give many falsies, I am not at home so cannot test right now. Something like this can show how common/uncommon these are: git grep -E "[^=]=[[:space:]]*E[[:upper:]2]+ *;" | sed -r "s/^([^:]*:).*(return|[^=]=)[[:space:]]*(-?E)[[:upper:]2]+ *;.*$/\1 \3/" | sort | uniq -c > 5 out of 8 places look buggy - i.e. more than 60% - a checkpatch warning > would avoid real bugs here. (even ignoring the cleanliness effects of > using proper error propagation) > Ingo Thanks for picking this up, Roel ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july -- _______________________________________________ Dri-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/dri-devel
