On Sun, 9 Sep 2007 17:46:54 +0100 "Adrian McMenamin" <lkmladrian@gmail.com> wrote:Hi, in general the code looks clean; great job on that. A few suggestions and comments to hopefully help this driver to become even better: First of all, I'm a little concerned about the lack of locking that this driver seems to have; what guarantees the integrity of the lists used in the driver? Second, you have a lot of use of likely() and unlikely(); so much that I think it's waaaay overkill. The code it's in generally isn't hotpath, and gcc also does a pretty decent job without giving these hints in general. for example this list.. what makes sure that no 2 pieces of code muck with it at the same time? this unlikely isn't needed; gcc basically assumes that NULL pointer checks are unlikely anyway... this is I think a small bug; it is for sure unsafe against jiffies wrapping... please consider using the time_before() and time_after() helpers which will make this comparison safe wrt jiffies wrapping. The same is true for all other jiffies use in the driver... I wonder if you want to at least check if the work was really for you before returning IRQ_HANDLED.... -
| Thomas Gleixner | Re: Linux 2.6.21-rc1 |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| James Bottomley | [Ksummit-2008-discuss] Fixing the Kernel Janitors project |
| James Morris | Re: LSM conversion to static interface |
git: | |
| Natalie Protasevich | [BUG] New Kernel Bugs |
| Christoph Hellwig | Re: [PATCH 06/32] IGET: Mark iget() and read_inode() as being obsolete [try #2] |
| Linus Torvalds | Re: [GIT]: Networking |
| Jarek Poplawski | [PATCH take 2] pkt_sched: Protect gen estimators under est_lock. |
