LWN: Comments on "The zen of kobjects"
http://lwn.net/Articles/51437/
This is a special feed containing comments posted
to the individual LWN article titled "The zen of kobjects".
hourly2register_chrdev_region() not working
http://lwn.net/Articles/112653/rss
2004-11-24T10:34:39+00:00prakash07
i am newbe i am trying to register a character driver using alloc_char_region(300,61,1,"prakash");<br>
it is compiling with warnings <br>
passing arg 1 of 'alloc_chrdev_region' makes pointer from integer without cast.<br>
<p>
if i load the module with insmod it is giving displaying<br>
Unable to handle kernel NULLpointer derefrence at virtual address 0000012c<br>
printing Eip:<br>
segmentation fault<br>
<p>
i am not able to unload my module<br>
plz any one help me to get out of this problem<br>
<p>
<p>
OO ignoramuses -- and proud of it!
http://lwn.net/Articles/54637/rss
2003-10-20T14:55:48+00:00guest1
This must be one of the twistiest, dumbest, worst code designs I've ever seen! <br> <br>When they speak, at every opportunity they get, most kernel hackers love to complain <br>loudly about how stupid and useless C++ and OO development is. And now when they <br>code, at every opportunity they get, kernel hackers like to demonstrate how stupid and <br>useless their OO design skills are. <br> <br>This is not a clean design. They are trying to solve 2 or 3 problems with 1 lump of code. <br>The sysfs, kset, and kobject "objects" are mashed together. 3 sets of pointers? The <br>functionality for adding an "object" to a "container" is supposed to be contained in the <br>container, not the object! What a joke, little early for April 1st, isn't it? <br> <br>Even a quick high-level overview of any of dozens of OO libraries (especially where <br>containers are involed) would have given the kernel hackers any number of good ideas <br>how to create a clean, compartmentalized design. Oh yea, we don't do OO, it's dumb.
The zen of kobjects
http://lwn.net/Articles/53476/rss
2003-10-12T23:15:26+00:00Russell
Seems to me they could do a LOT more with the kobject idea. What about adding a hook lists to report events to whoever is interested, i.e. what gnome's glib calls signals. This could clean up a lot of things.
minor typo???
http://lwn.net/Articles/52615/rss
2003-10-07T14:49:56+00:00corbet
Clearly it was meant to be a 'struct subsystem', it's fixed now.
<p>
In general, typo reports sent to lwn@lwn.net have a higher chance of being read and acted upon - we can't always keep up with the comments.
minor typo???
http://lwn.net/Articles/52613/rss
2003-10-07T14:46:04+00:00pflugstad
In this section:
<pre>
Subsystems are often declared with a special macro:
decl_subsys(char *name, struct kobj_type *type,
struct kset_hotplug_ops *hotplug_ops);
This macro just creates a struct system (its name is the name given to the
macro with _subsys appended) with the internal kset initialized with the
given type and hotplug_ops.
</pre>
Do you mean that this creates a "struct system", or "struct subsystem", defined just above it?
The zen of kobjects
http://lwn.net/Articles/52401/rss
2003-10-05T12:48:28+00:00razalasm
This is the kind of intelligent, well written summary of Linux's ever changing technical landscape that justifies my subscription to LWN. Please keep up the good work.
The zen of kobjects
http://lwn.net/Articles/52197/rss
2003-10-03T04:52:45+00:00torsten
You had me, then you lost me. Somewhere just after <b>Embedding kobjects</b>.
Initializing a kobject
http://lwn.net/Articles/52085/rss
2003-10-02T17:56:04+00:00gregkh
One minor addition, all fields in a <tt>struct kobject</tt> must be initialized to zero before calling <tt>kobject_init()</tt>. If this is not true, bad things can happen when <tt>kobject_init()</tt> is called.<br>
<br>
This is easily done by calling
<tt>memset(foo, 0x00, sizeof(*foo));</tt> if <tt>foo</tt> contained a <tt>struct kobject</tt>, before calling <tt>kobject_init()</tt>.
The zen of kobjects
http://lwn.net/Articles/52013/rss
2003-10-02T12:45:11+00:00paulsheer
With each one of these articles i get more encouraged<br>to help with the kernel. *sigh* perhaps i will get<br>round to it at some point.<br>