Livepatchでは、カーネル内関数をトレースするftrace機能を使って処理を差し替えている。Livepatchモジュールをロードするとftraceに追加した処理の上書き対象を登録する。上書き対象の処理が呼び出されたら、ftraceがそれを検知し、登録済みの処理にリダイレクトすることで新しい処理が実行される。これによりLivepatchモジュールをロードするだけで、呼び出し元の処理を変更することなく、任意の処理を修正できるのだ