On Thu, Jun 20, 2024 at 08:10:06PM +0800, Hongyi Lu wrote:
> Oh, thank you for the suggestions.
> 
> I'll give CONDITION_HOOK a try. It's just that I really need to know the
> "source location" of the condition so the WHOLE_CONDITION_HOOK makes sure
> composited conditions like A and B in (A && B) appear together.

I mean, if you want to and it's working then that's great.  But
generally we wouldn't want to differentiate between:

ONE:
        if (A && B)
                return;
TWO:
        if (A) {
                if (B)
                        return;
        }

I guess, what I'm imagining you want is something like this.  How is
some_function() reachable from the user?

int driver_ioctl(...)
{

        if (!foo)
                return -EINVAL;
        if (bar)
                return -EINVAL;

        return some_function();
}

If we did something like stored conditions we could make a list of all
the conditions which are true and which are false when we call
some_function().

regards,
dan carpenter


Reply via email to