[lkml]   [2008]   [Mar]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 2/5] firewire: fix crash in automatic module unloading
Kristian Høgsberg wrote:
> I would want to use a kref and a completion for tracking this though
> instead of the atomic. Just use kref_get() instead of incrementing
> the atomic and use kref_put() instead of decrementing it. The release
> function for kref_put() should complete the completion struct and
> instead of the busy loop in fw_core_remove_card() we just wait for the
> completion.

Sounds like the way to go. Since I already passed that patch upwards, I
will do an incremental rework. (But perhaps not before spending some
time on ticket number 9617 at's...)

> And I'm not sure I agree that it's a device_count, it
> really just is a ref-count. The core should also hold a reference to
> the card and release it in fw_core_remove_card(), just before waiting
> on the completion.

Right; we just shouldn't mix fw-ohci's refcounting (which isn't really
needed since the lifetime rules for the card are as simple as they can
get for fw-ohci) and fw-core's refcounting.
Stefan Richter
-=====-==--- --== ---==
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2008-03-03 18:39    [W:0.059 / U:1.764 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site