------=_Part_686_30276318.1148046752957 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Thank you. Your comments help me so much. It seems to solve my question between completion and semaphore. Have a nice day. On 5/19/06, Arjan van de Ven <arjan@infradead.org> wrote:------=_Part_686_30276318.1148046752957 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline <div>Thank you. Your comments help me so much. </div> <div>It seems to solve my question between completion and semaphore. </div> <div> </div> <div>Have a nice day.</div> <div><br><br> </div> <div><span class=3D"gmail_quote">On 5/19/06, <b class=3D"gmail_sendername">= Arjan van de Ven</b> <<a href=3D"mailto:arjan@infradead.org">arjan@infra= dead.org</a>> wrote:</span> <blockquote class=3D"gmail_quote" style=3D"PADDING-LEFT: 1ex; MARGIN: 0px 0= px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">On Fri, 2006-05-19 at 12:41 +090= 0, minchan Kim wrote:<br>> Thanks to your commenting.<br>><br>> I = understand your point. But I see the book "Understanding of= the <br>> Linux Kernel", it says "Semaphore happen race condition = problem in the<br>> SMP envirioment since call up and down concurrency. = But Completion<br>> isn't"<br>><br>> I don't understand it. D= o you understand it? <br><br>I think they mean that semaphores will cause exclusion (but really,= use<br>mutexes, much easier and they are replacing semaphores), while<br>c= ompletions do not cause exclusion...<br><br>eg you can use a mutex to preve= nt concurrent access (as the code snippet <br>I gave you before shows), while a completion really doesn't do that.<br= ENTIRELY different things. Not even comparable. So saying <br>"they're different in <this tiny detail>" sort of impli= es they're<br>similar constructs in many other ways. They are not. Don't ev= en think<br>they are.<br><br>(having said that, some people used to abuse s= emaphores to do a <br>completion type of behavior, which is where the confusion is coming<br>= from, but just don't do that or even focus on that, it's like using the<br>= back of a book to drive a nail in the wall and then ask "what's the <br>difference between a book and a hammer since I now have both". The= <br>answer is "who cares. Just use the hammer for your own sanity"= ; :)<br><br><br></blockquote></div><br> ------=_Part_686_30276318.1148046752957--
| Borislav Petkov | 2.6.23-rc1: no setup signature found... |
| Andrew Morton | Re: [PATCH] Memory management livelock |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Steven King | ti_usb_3410_5052 breakage in 2.6.24-rc1 |
git: | |
| Linus Torvalds | cleaner/better zlib sources? |
| Theodore Ts'o | [PATCH] Add --no-reuse-delta, --window, and --depth options to git-gc |
| Karl | Re: [PATCH] Add a birdview-on-the-source-code section to the user manual |
| Yossi Leybovich | corrupt object on git-gc |
| GVG GVG | ssh_exchange_identification: Connection closed by remote host |
| Richard Stallman | Re: Real men don't attack straw men |
| David Newman | setting dscp or tos bits |
| Stijn | Re: [i386/Thinkpad T41]USB mouse + Xorg obsd 4.1 |
| Quentin Garnier | [cube@cubidou.net: Re: Moving ethfoo in the main tree] |
| cube | Moving ethfoo in the main tree |
| Blair Sadewitz | PCI latency timer values |
| Oliver Gould | kqemu: driver(9)/filedesc(9) questions |
