Parece que o comando que está sendo morto é uma FUNÇÃO ALTER PARTITION, é interessante notar que isso requer um bloqueio SCH-M que é incompatível com bloqueios SCH-S que são usados para tudo. Acho que isso pode ser uma causa.
Consulte michaeljswart.com/2013/04/the-sch -m-lock-is-mal .
Veja também esta descrição de um impasse SCH-M de uma função ALTER PARTITION e uma consulta que causa uma atualização de estatísticas no SQL 2014 e 2016, mas talvez seja verdade também em 2012:Deadlock ocorre quando você adquire um bloqueio SCH-M
Observando seu gráfico, um processo tem um bloqueio compartilhado (atualização) em sysschobjs e está aguardando um bloqueio SCH-S em sua tabela. Seu processo tem um bloqueio SCH-M em sua tabela e está aguardando um bloqueio X em sysschobjs. sysschobjs é uma tabela base do sistema que fica atrás de sysobjects. Veja a discussão aqui Technet:Consulta SQL que causa deadlock com frequência
Espero que isto ajude