What does ">>=" mean in Linux kernel source code?
c, kernel, linux
Solution
It simply does
pending = pending >>1;
In short it divides by 2 an unsigned int.
That's the same construct than `+=`, `/=`, etc.
It's not just `pending >>1` as you remember because that wouldn't store the result of the shift operation in the variable.
Problem
in Linux kernel source code, I find below code: ``` h++; pending >>= 1; ``` It is part of `__do_softirq(void)`. But what does ">>=" mean? Why isn't it ">>" as I remember? Thanks!