over at http://code.google.com/p/ldd3/ it says: The famous "Linux Device Drivers" released the sample code. but the code does not reflect the latest kernel updates, some of code cannot even compile. This project is to make it compatible with the current kernel. http://lwn.net/Kernel/LDD3/ http://examples.oreilly.com/9780596005900/ Neither the OReilly tarball, nor the googlecode's svn repo will compile for me on an updated F-14 box, neither against uname -r, or a local git-tree. So I pulled the svn-tree, and made these changes. I got a fair way to getting things to compile. Changes are quick-n-dirty, and some may be wrong, esp around workqueue stuff - I pretty much did what compiler told me, w/o any analysis. I didnt even get compilation on the aio/iovec users, on the changes from 2003. I havent really gotten my head around the whole conversion strategy; I know a loop over iovec elements is probably needed, but Im unclear where it should be. and Im unsure whether these functions are now cluttering up things. static void sculld_do_deferred_op(void *p) static int sculld_defer_op(int write, struct kiocb *iocb, const struct iovec *iov, size_t count, loff_t pos) I guess the point is Ive run out of time now, and am hoping for a dose of clarity, and further patches, to get LDD3 source compiling, up-to-date, and reflecting current best practices. GRUMBLING: its annoying that the googlecode web-page obfuscates the site owner, making it impossible to reach him. Username: guanzhi1...@xxxxxxxxx Is there another LDD3 repo somewhere, that a google search didnt reveal to me ? perhaps on kernel.org ?? Should there be ? Im attaching my svndiff, in hte hopes that folks here will apply it and improve upon it. thanks ~jimc
Attachment:
ldd3-code.svndiff
Description: Binary data
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies