Mouse movement with SDL_ShowCursor(0), SDL_WM_GrabInput(SDL_GRAB_ON)

There seems to be a difference in mouse response time between using
SDL_ShowCursor(0), SDL_WM_GrabInput(SDL_GRAB_ON) and without.

When either of these are used (or none at all), the mouse movement is
fine. But when they are both enabled, the movement is somewhat
sluggish. Anyone know why that happens?

This happens in fullscreen mode, when I turn off the cursor and grab
mouse events. I tried to create a hack that makes the pointer invisible
without turning it off, and although that eliminated the mouse lag, I
couldn’t make the cursor completely disappear (it was still 1 pixel).

Any help is greatly appreciated.