When the Linux kernel creates the stack frame for a signal handler, a call to sigreturn is inserted into the stack frame so that the the signal handler will call sigreturn upon return. This inserted call to sigreturn cleans up the stack so that the process can restart from where it was interrupted by the signal.
sigreturn is used by the kernel to implement signal handlers. It should never be called directly. Better yet, the specific use of __unused varies depending on the architecture.