Cuando quieres pre-definir un valor de php.ini en tiempo de ejecución .. en el caso de directivas de configuración que afecten a sesiones se debe hacer -antes- de session_start().
De todas formas .. no sólo involucara "session.gc_maxlifetime" en el tiempo de vida de una sesión, depende de como propagues el SID en tu configuración de PHP (por cookies o URL) y si lo haces por cookies, estás supeditado a tiempo de vida de la cookie que PHP crea para propagar el SID si lo haces por este método.
En este mensaje se trató ampliamente el tema:
http://www.forosdelweb.com/f18/configuracion-php-ini-sesiones-415276/
Los valores los puedes cambiar en tu php.ini (si tienes acceso) .. vía ini_set() (no funciona en todos los casos) .. o via un .htaccess o un php.ini personalizado si usas un servicio de hosting que así defina que puedes configurar PHP por ese médio, en estos casos usando php_flag y/o php_value para definir valores.
Un saludo,